package com.hotel.dao;


import com.hotel.entity.Room;
import com.hotel.exception.EntityException;

import java.sql.SQLException;
import java.util.List;
import java.util.Map;

public interface RoomDao {

    // 获取所有房间
    List<Room> getRooms() throws SQLException;

    // 根据id获取一个用户对象
    Room getRoomById(String id);

    // 根据房间号获取一个对象
    Room getRoomByRoomNo(String roomNo) throws EntityException;

    // 根据前端传递的参数获取sql语句限定条件
    String getSearchSQL(Map<String, Object> map);

    // 根据搜索片段获取数据数量
    int getCount(String sqlPart) throws SQLException;

    // 根据完整限定条件加上分页获取房间集合
    List<Room> getList(String sqlPart, Integer page, Integer limit) throws SQLException;

    // 新增房间
    int addRoom(Room room) throws SQLException;

    // 修改房间，根据id查找并修改
    int updateRoom(Room room) throws SQLException;

    // 删除房间，根据id删除
    int deleteRoom(String id) throws SQLException;
}
